home *** CD-ROM | disk | FTP | other *** search
/ Freelog 125 / Freelog_MarsAvril2015_No125.iso / ViePratique / gnucash / gnucash-2.6.5-setup.exe / {app} / bin / install-fq-mods.cmd < prev    next >
OS/2 REXX Batch file  |  2014-12-19  |  6KB  |  190 lines

  1. @echo off
  2. setlocal
  3.  
  4. REM ----------------------------------------------------------------------------
  5. if not exist ssleay32.dll (
  6.   echo.
  7.   echo Did not find ssleay32.dll in current directory.
  8.   echo Please start this cmd file in the bin directory created by the setup.exe.
  9.   goto error
  10. )
  11.  
  12. REM ----------------------------------------------------------------------------
  13. echo.
  14. echo * Check Perl
  15. echo.
  16. perl -v > NUL 2>&1 
  17. if %errorlevel% equ 0 goto chkver
  18. echo. 
  19. echo   No Perl executable found, attempt to install Strawberry Perl
  20. echo   This may take a while depending on your network speed
  21.  
  22. REM ----------------------------------------------------------------------------
  23. echo.
  24. echo * Download Strawberry Perl package
  25. echo.
  26. call cscript//nologo getperl.vbs %TEMP%\Perl.msi
  27. if %errorlevel% neq 0 (
  28.    echo   Return Value: "%errorlevel%"
  29.    echo.
  30.    echo   failed to download perl install file
  31.    echo.
  32.    goto error
  33. )
  34.  
  35. REM ----------------------------------------------------------------------------
  36. echo.
  37. echo * Run automated Perl install
  38. echo.
  39. msiexec /qb /l* %TEMP%\perl-log.txt /i %TEMP%\Perl.msi PERL_PATH=Yes PERL_EXT=Yes
  40. if %errorlevel% neq 0 (
  41.    echo   Return Value: "%errorlevel%"
  42.    echo.
  43.    echo   failed to install perl from %TEMP%\Perl.msi
  44.    echo.
  45.    del  %TEMP%\Perl.msi
  46.    goto error
  47. )
  48. %SystemDrive%\strawberry\perl\bin\perl -v
  49. del  %TEMP%\Perl.msi
  50.  
  51. REM ----------------------------------------------------------------------------
  52. echo.
  53. echo * Update PATH variable to include Perl
  54. echo.
  55. :: delims is a TAB followed by a space
  56. FOR /F "tokens=2* delims=     " %%A IN ('REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path') DO SET NewPath=%%B
  57. ECHO NewPath = %NewPath%
  58. set Path=%NewPath%
  59.  
  60. REM ----------------------------------------------------------------------------
  61. :chkver
  62. echo.
  63. echo * Check Perl version
  64. echo.
  65. perl -e "exit(int($]));"
  66. set _perlmajor=%errorlevel%
  67. perl -e "$ver=1000*sprintf(\"%%.3f\", $]); exit(int($ver)-5000);"
  68. set _perlminor=%errorlevel%
  69. if %_perlmajor% equ 5 (
  70.   if %_perlminor% geq 10 (
  71.     set _perlversion=5.10
  72.     goto pchk
  73.   )
  74.   if %_perlminor% equ 8 (
  75.     set _perlversion=5.8
  76.     goto pchk
  77.   )
  78. REM Note: GnuCash no longer "officially" supports perl 5.6, but as long as it works it will be allowed...
  79.   if %_perlminor% equ 6 (
  80.     set _perlversion=5.6
  81.     goto pchk
  82.   )
  83. )
  84. echo.
  85. echo Found perl version %_perlmajor%.%_perlminor%, but GnuCash requires at least version 5.8.
  86. echo Please install version 5.8 or above of
  87. echo * ActivePerl (http://www.activestate.com/store/activeperl) or
  88. echo * Strawberry Perl (http://code.google.com/p/strawberry-perl/downloads/)
  89. echo and add the bin directory to your Path environment variable.
  90. goto error
  91.  
  92. REM ----------------------------------------------------------------------------
  93. :pchk
  94. REM echo.
  95. REM echo * Run gnc-path-check
  96. REM echo.
  97. REM perl -w gnc-path-check
  98. REM if %errorlevel% neq 0 goto error
  99.  
  100. REM ----------------------------------------------------------------------------
  101. echo.
  102. echo * Determine which Perl flavour we have found
  103. echo.
  104. perl -e "use Win32;if(defined &Win32::BuildNumber){exit 2;}else{exit 3;};"
  105. REM echo status = %errorlevel%
  106. if %errorlevel% equ 2 (
  107.   echo   - ActivePerl
  108.   goto inst_mod_as
  109. ) else if %errorlevel% equ 3 (
  110.   echo   - Other, probably Strawberry perl ?
  111.   goto inst_mod_oth
  112. ) else if %errorlevel% neq 0 goto error
  113.  
  114. REM ----------------------------------------------------------------------------
  115. :inst_mod_oth
  116. echo.
  117. echo * Install required perl modules
  118. echo.
  119. perl -w gnc-fq-update
  120. if %errorlevel% neq 0 goto error
  121. goto fqchk
  122.  
  123. REM ----------------------------------------------------------------------------
  124. :inst_mod_as
  125. echo * Install DateManip
  126. echo.
  127. perl -x -S ppm install Date-Manip
  128. if %errorlevel% neq 0 (
  129.   perl -x -S ppm install DateManip
  130.   if %errorlevel% neq 0 goto error
  131. )
  132.  
  133. REM ----------------------------------------------------------------------------
  134. echo.
  135. echo * Install Crypt-SSLeay
  136. echo.
  137.  
  138. set OLDPATH=%PATH%
  139. set PATH=%CD%;%PATH%
  140. if %_perlversion% == 5.6 (
  141.   perl -x -S ppm install http://theoryx5.uwinnipeg.ca/ppmpackages/Crypt-SSLeay.ppd
  142. ) else if %_perlversion% == 5.8 (
  143.   echo anything | perl -x -S ppm install http://theoryx5.uwinnipeg.ca/ppms/Crypt-SSLeay.ppd
  144. ) else (
  145.   perl -x -S ppm install Crypt-SSLeay
  146. )
  147. set errlvlbak=%errorlevel%
  148. set PATH=%OLDPATH%
  149. if "%errlvlbak%" neq "0" goto error
  150.  
  151. REM ----------------------------------------------------------------------------
  152. echo.
  153. echo * Install Finance-Quote
  154. echo.
  155. perl -x -S ppm install Finance-Quote
  156. if %errorlevel% neq 0 goto error
  157.  
  158. REM ----------------------------------------------------------------------------
  159. :fqchk
  160. echo.
  161. echo * Run gnc-fq-check
  162. echo.
  163. perl -w gnc-fq-check
  164. if %errorlevel% neq 0 goto error
  165.  
  166. REM ----------------------------------------------------------------------------
  167. echo.
  168. echo * Run gnc-fq-helper
  169. echo.
  170. echo (yahoo "AMZN") | perl -w gnc-fq-helper
  171. if %errorlevel% neq 0 goto error
  172.  
  173. REM ----------------------------------------------------------------------------
  174. :success
  175. echo.
  176. echo * Installation succeeded
  177. echo.
  178. goto end
  179.  
  180. REM ----------------------------------------------------------------------------
  181. :error:
  182. echo.
  183. echo An error occurred, see above.
  184. echo.
  185.  
  186. REM ----------------------------------------------------------------------------
  187. :end
  188. pause
  189.  
  190.